﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using KnowledgeBaseIntermediary;

namespace OutputHandler
{
    /// <summary>
    /// The Interface of the Output Handler, which is used to handle outgoing data. It will do TTS Conversion, send text to the visual output and send UDP Commands to the Home Server.
    /// </summary>
    public interface IOutputHandler
    {
        /// <summary>
        /// Used to send TTS Text and Descriptive to the audio/visual output.
        /// </summary>
        /// <param name="outputObject">The OutputObject contains TTS Text and descriptive Text.</param>
        /// <returns>True if the output was successfull</returns>
        bool spill(OutputObject outputObject);

        /// <summary>
        /// Used to send TTS Text and Descriptive Text to the audio/visual output and send a UDP Command to the Home Server.
        /// </summary>
        /// <param name="commandObject">
        /// The CommandObject contains a UDP String, TTS Text and descriptive Text.
        /// </param>
        /// <returns>
        /// True if the output was successfull
        /// </returns>
        bool sendCommand(CommandObject commandObject);

        
    }
}
